package com.wwl.generic;
/**
 * 作业：集合遍历
 * 1）对于List，使用ArrayList创建集合对象，在其中加入类型为字符串的元素若干，
 *    使用迭代器、fori循环，foreach循环3种方式对集合对象进行遍历。
 * 2）对于Set，使用HashSet创建集合对象，在其中加入类型为字符串的元素若干，
 *   使用迭代器、foreach循环3种方式对集合对象进行遍历。
 * 3）对于Map，使用HashMap创建Map对象，在其中加入元素若干，其中的Key为Integer类型，value为Person类型
 *    使用3种方式对Map中的key、value或者key-value进行遍历操作。
 */

import java.io.Serializable;
import java.util.Date;
import java.util.Enumeration;
import java.util.List;
import java.util.Vector;

public class VectorDemo {

    public static void main(String[] args) {
        Vector vector= new Vector();
        vector.add("Tom");
        vector.add("Tom2");
        vector.add("Tom3");
        vector.add(new Date());

        Enumeration e = vector.elements();
        while(e.hasMoreElements()){
            String obj= (String) e.nextElement();
            System.out.println("name="+obj);
        }

        for (int i = 0; i < vector.size(); i++) {
            Object obj = vector.elementAt(i);
            System.out.println("name="+obj);
        }

        for(Object s : vector){
            System.out.println("name="+s);
        }
    }
}

interface Dao<T>{
    public List<T> getAll();
    public T get(int id);
    public int add(T t);
    public int delete(int id);
    public int edit(T t);
}
class UserDao<User> implements Dao<User>{
    @Override
    public List<User> getAll() {
        return null;
    }
    @Override
    public User get(int id) {
        return null;
    }
    @Override
    public int add(User user) {
        return 0;
    }
    @Override
    public int delete(int id) {
        return 0;
    }
    @Override
    public int edit(User user) {
        return 0;
    }
}

interface PrintUtils<T extends Serializable>{
    //public void show(List<?> list);
    //public void show(List<? extends T> list);
    //public void show(List<? super T> list);
}
